Checking the quality of software entails both a high effort in terms of time and also an associated high effort in terms of cost. In particular, with a manual quality assessment it is frequently impossible to determine reliable, reproducible and/or constructive suggestions for the improvement of the software quality within a framework that is acceptable in terms of both time and money.
The information on the quality of software codes obtained by pure benchmark solutions based on metrics or static code analyses is of limited use only. Generally, only lists of metrics with details of threshold crossings or a quantity of rule infringements are generated. A manual analysis and/or assessment of these results is sometimes just as complex as the quality analysis of the software code itself.
There is frequently a desire to obtain weighted information for proposed improvements to a software code, which, depending on the effort, costs and expected potential for improvement, enable measures for improvement to be prioritized in order to achieve a desired quality level under prespecified project aims or to approximate them as closely as possible within the limits of the available budget.
There is a requirement for a quality analysis for software codes, wherein the results of the quality analysis should enable conclusions to be drawn regarding the aspect or assessment coverage. At the same time, a quality analysis should simultaneously suggest procedures as to how the assessment coverage can be increased under predetermined framework conditions, possibly by means of manual quality analysis.
In this context, the assessment must include other aspects in addition to those aspects of the quality analysis for software codes which can be measured by automated means.